Public-Key Cryptanalysis